const Koa = require('koa');

const app = new Koa();

const fs = require('fs');

//1.统计每次请求花费的时间   //2.把每次请求花费时间和请求方式以日志的形式输出到log.log文件内

app.use(async (ctx,next) => {
    // console.log(ctx.request.query)
    // ctx.body = [{title:'桃子'},{title:'西瓜'}];
    let startTime = new Date().getTime(); //开始的时间
    console.log("第一个中间件开始");
    await next();
    console.log("第一个中间件结束");
    let endTime = new Date().getTime(); //记录结束时间
    let time = endTime - startTime;
    let method = ctx.request.method; //请求方式
    let url = ctx.request.url;
    fs.appendFileSync('./log.log',`${url}----${time}---${method}`) 
    ctx.body = `本地请求花费了${time}`;
})

app.use(async (ctx,next) =>{
    console.log("第二个中间件开始");
    await next();
    console.log("二结束")
})

app.use(async (ctx,next) =>{
    console.log("第三个中间件开始");
    await next();
    console.log("三结束")
    
})

app.listen(3000,() => {
    console.log("服务启动成功")
});